package com.ruoyi.business.dto;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.OffsetDateTime;
import java.util.Date;
import java.util.List;


@Data
@NoArgsConstructor
@AllArgsConstructor
public class TicketDTO {
    //标的代码 SZSE.000001
    private String symbol;
    //日线开盘价
    private Float open;
    // 日线最高价
    private Float high;
    //日线最低价
    private Float low;
    //最新价(集合竞价成交前price为0)
    private Float price;
    //交易类型（只适用于期货） 1: '双开', 2: '双平', 3: '多开', 4: '空开', 5: '空平', 6: '多平', 7: '多换', 8: '空换'
    private int trade_type;

    private String created_at;

    private Date marketTime;
    /**
     * 股票提供买卖 5 档数据, list[0]~list[4]分别对应买卖一档到五档, 期货提供买卖 1 档数据, list[0]表示买卖一档；,
     * level2 行情对应的是 list[0]~list[9]买卖一档到十档，注意：：可能会有买档或卖档报价缺失，比如跌停时无买档报价（bid_p 和 bid_v 为 0），涨停时无卖档报价(ask_p 和 ask_v 为 0);
     */
    private List<QuoteDTO> quotes;
    public Date getMarketTime() {

        OffsetDateTime offsetDateTime = OffsetDateTime.parse(this.created_at);

        // 将OffsetDateTime转换为Date
        return Date.from(offsetDateTime.toInstant());
    }
}
